<?php

if (!defined('BASEPATH'))
    exit('No direct script access allowed');

class Inicio extends CI_Controller {

    public function index() {
        /* Control para desplegar la informacion de logueo */
        $this->session->sess_destroy(); //hago esto, pero es un maldito bug de CI por que no hace nada...
        $this->session->unset_userdata('usuarioId');
        $this->session->unset_userdata('usuarioId_externo');
        $this->session->unset_userdata('perfilId');
        $this->session->unset_userdata('participanteId');
        //$this->load->helper('url');
        $this->load->view('view_login');
    }

//fin public function index(){

    public function logueo() {
        /* Funcion para el control del logueo */
        $this->load->model("maestras_model", "maestras", TRUE);
        $result = $this->maestras->buscaUsuario($this->input->post("txtUsuario"), $this->input->post("txtContra"), 'U');
        if ($result->num_rows() > 0) {
            $this->asignaSession($result);
            $result = $result->result();
            $parametros = array();
            $parametros["nombre"] = $result[0]->participanteNombres;
            switch ($result[0]->perfilId) {
                case '1': //es un coordinador                    
                    $instrumentos = $this->maestras->instrumento();
                    $parametros["instrumentos"] = $instrumentos;
                    $this->load->view('view_principalCordinador', $parametros);
                    break;
                case '3': //es un revizor externo
                    $parametros["zonas"] = $this->maestras->zonas();
                    $this->session->set_userdata('usuarioId_externo', $result[0]->usuarioId);
                    $this->load->view('view_principalCordinadorExterno', $parametros);
                    break;

                default:
                    $agentes = $this->maestras->extAgentes($this->session->userdata("usuarioId"));
                    $municipios = $this->maestras->municipios($result[0]->departamentoId);
                    $modalidades = $this->maestras->modalidades();
                    $insCampo = $this->maestras->instrumentosCampo();
                    $this->load->view('view_principal', array("agentes" => $agentes, "departamento" => $result[0]->departamento, "modalidades" => $modalidades, "municipios" => $municipios, "insCampo" => $insCampo));
                    break;
            }
        } else {
            $this->load->view('view_login', array("falla" => "Usuario y/o Contraseña Incorrecta"));
        }
        return;
    }

//fin public function logueo(){

    private function asignaSession($result) {
        /* Funcion para asignar las variables de session de todo el sistema */
        $obj = $result->result();
        $this->session->set_userdata('usuarioId', $obj[0]->usuarioId);
        $this->session->set_userdata('perfilId', $obj[0]->perfilId);
        $this->session->set_userdata('participanteId', $obj[0]->participanteId);
        $this->session->set_userdata('departamentoId', $obj[0]->departamentoId);
        return;
    }

    public function cordiExterno() {
        $this->load->model("maestras_model", "maestras", TRUE);
        /* Funcion para controlar la visualizacion de un formulario segun la seleccion del departamento */
        $parametros = array();
        $this->session->set_userdata('departamentoId', $this->input->POST("departamento"));
        $parametros["agentes"] = $this->maestras->extAgentes($this->input->POST("departamento"), '2');
        $tmp = $this->maestras->departamentoInfo($this->input->POST("departamento"));
        $parametros["departamento"] = $tmp->departamento;
        $parametros["municipios"] = $this->maestras->municipios($this->input->POST("departamento"));
        $parametros["modalidades"] = $this->maestras->modalidades();
        $parametros["insCampo"] = $this->maestras->instrumentosCampo();
        $this->load->view('view_principal', $parametros);
        return true;
    }

    public function iniciaCordiExt() {
        /* Carga nuevamente la vista para el cordinador externo */
        $this->load->model("maestras_model", "maestras", TRUE);
        $parametros = array();
        $infoUsr = $this->maestras->infoUsuario($this->session->userdata("participanteId"),'2');
        $infoUsr = $infoUsr->result();
        $parametros["nombre"] = $infoUsr[0]->nombres;
        $parametros["zonas"] = $this->maestras->zonas();
        $this->load->view('view_principalCordinadorExterno', $parametros);
        return true;
    }

}

//fin class Inicio extends CI_Controller {